xl: fix double free of domain names
authorGianni Tedesco <gianni.tedesco@citrix.com>
Fri, 10 Sep 2010 17:47:53 +0000 (18:47 +0100)
committerGianni Tedesco <gianni.tedesco@citrix.com>
Fri, 10 Sep 2010 17:47:53 +0000 (18:47 +0100)
Assigning malloc'd variables from one structure to another when both of
them are free'd via destructors is a bad idea. Let's use a strdup.

Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
tools/libxl/xl_cmdimpl.c

index c8df350be99362b4913394923ec3f867f11ef54d..d92e288ede3f6a8f3572d5060aa060ec910149e4 100644 (file)
@@ -296,7 +296,7 @@ static void init_dm_info(libxl_device_model_info *dm_info,
 
     libxl_uuid_generate(&dm_info->uuid);
 
-    dm_info->dom_name = c_info->name;
+    dm_info->dom_name = strdup(c_info->name);
     dm_info->device_model = strdup("qemu-dm");
     dm_info->videoram = b_info->video_memkb / 1024;
     dm_info->apic = b_info->u.hvm.apic;